<?php

class Developer_UserController extends Zend_Controller_Action
{

    public function init()
    {
        $options = array(
        		'layout'=>'auth',
        		'layoutPath'=>LAYOUT_PATH."/developer"
        );
        Zend_Layout::startMvc($options);
        $this->view->headLink()->appendStylesheet(TEMPLATE_URL.'/min/g=cssDev');
    }

    public function indexAction()
    {
        // action body
    }

    public function registerAction()
    {
        $func = new NVL_Functions();
        $result = array();
        $error = array();
        if($this->getRequest()->getPost()){
           $_post = $this->getRequest()->getPost();           

           $mUser = new Application_Model_User();
           
           
           $username = strip_tags(trim($this->_request->getPost('username')));
           if(empty($username)){
               $error[] = 'Tên đăng nhập không được rỗng';
           }else{
               if($mUser->checkExistUsername($username)) $error['username'] = "Tên đăng nhập đã có người dùng";
           }
           $email = strip_tags(trim($this->_request->getPost('email')));
           if(empty($email)){
               $error[] = 'Email không được rỗng';
           }else{
               if($mUser->checkExistEmail($email)) $error[] = "Email đã có người dùng";
           }
           
           $password = strip_tags(trim($this->_request->getPost('password')));
           if(empty($password)){
               $error[] = 'Mật khẩu không được rỗng';
           }
           
           $repassword = strip_tags(trim($this->_request->getPost('repassword')));
           if(empty($repassword)){
               $error[] = 'Nhập lại mật khẩu không được rỗng';
           }
           else if(!empty($password) && $password != $repassword)
           {
               $error[] = 'Mật khẩu và nhập lại mật khẩu không đúng';
           }
           
           $fullname = strip_tags(trim($this->_request->getPost('fullname')));
           if(empty($fullname)){
               $error[] = 'Họ tên không được rỗng';
           }
           $phone = strip_tags(trim($this->_request->getPost('phone')));
           if(empty($fullname)){
               $error[] = 'Số điện thoại không được rỗng';
           }
           $dev_type = strip_tags(trim($this->_request->getPost('type-dev')));
           $dev_name = strip_tags(trim($this->_request->getPost('name-dev')));
           if(empty($dev_name)){
               $error[] = 'Tên công ty/Tên nhóm là bắt buột';
           }
           $dev_address = strip_tags(trim($this->_request->getPost('address-dev')));
           
           $dev_country = strip_tags(trim($this->_request->getPost('country-dev')));
           
           
           if(empty($error)){
               $mUser->user_group_id = 2;
               $mUser->user_name = $username;
               $mUser->user_email = $email;
               $mUser->user_pass = $password;
               $mUser->display_name = $fullname;
               $mUser->user_phone = $phone;
               $mUser->user_registered = date('Y-m-d H:i:s');
               $mUser->user_salt = $func->generateRandomString();
               $activation_key = md5($func->generateRandomString());
               $mUser->user_activation_key = $activation_key;
               $user_id = $mUser->insertUser();
               if($user_id){
                   $mDevInfo = new Application_Model_Devinfo();
                   $mDevInfo->user_id = $user_id;
                   $mDevInfo->dev_name = $dev_name;
                   $mDevInfo->dev_type = $dev_type;
                   $mDevInfo->dev_address = $dev_address;
                   $mDevInfo->dev_country_id = $dev_country;
                   $mDevInfo->insertNew();
                   
                   $body = "<p>Chào <b>".$username."</b>,</p>";
                   $body .="<p>Bạn đã đăng ký thành công tài khoản với tên đăng nhập là:  <b>".$username."</b></p>";
                   $body .="<p>Bạn hãy click vào link phía dưới để tiến hành xác nhận địa chỉ email này của bạn:</p>";
                   $body .="<a href='"._BASE_URL."/user/auth/active?email=".$email."&key=".$activation_key."&type=developer'>KÍCH HOẠT TÀI KHOẢN</a>";
                   $body .="<p>---------------------------</p><p><b>KidPlay Team</b></p>";
           
                   $func->send_mail($email, 'Thông báo - Đăng ký tài khoản Nhà pphát triển Kidplay.vn', $body);
                   
                   $result['status'] = 'success';
                   $result['message'] = '<p>Đăng ký thành công!</p><p>Chúng tôi đã gửi mail kích hoạt đến địa chỉ email của bạn. Vui lòng kiểm tra mail để kích hoạt tài khoản. </p>';
               }
           }else{
               $result['status'] = 'error';
               $result['message'] = $error;
           }
           
        }
        $this->view->result = $result;
    }

    public function loginAction()
    {
        $mUser = new Application_Model_User();
        $errorSignin = array();
        if($this->_request->isPost()){
            
            $account = trim(strip_tags($this->_request->getPost('username')));
            $password = trim(strip_tags($this->_request->getPost('password')));
             
            if($account==''){$errorSignin[]='Bạn chưa nhập Email hoặc Tên tài khoản';}
            if($password==''){$errorSignin[]='Bạn chưa nhập mật khẩu';}
             
            if(empty($errorSignin))
            {
                $user=null;
                if(filter_var($account, FILTER_VALIDATE_EMAIL))
                {
                    $mUser->user_email = $account;
                    $user = $mUser->getUserByEmail();
                }else {
                    $mUser->user_name = $account;
                    $user = $mUser->getUserByUsername();
                }
                
                if (!empty($user)){                    
                    $password=$password.$user['user_salt'];
                }
                else{
                    $errorSignin[]='Tài khoản đăng nhập không hợp lệ hoặc mật khẩu không đúng';
                }
                /* 
                //var_dump($user);die;
                if (!empty($user)){
                    if($user['user_group_id']==2){
                        if($user['user_status']==0){
                            $errorSignin[]="Tài khoản của bạn chưa được kích hoạt. Vui lòng kiểm tra lại mail hoặc liên hệ <b>suport@kidplay.vn</b> để được hổ trợ.";
                        }else if($user['user_status']==1){
                            $errorSignin[]="Tài khoản của bạn chưa được xác nhận. Nếu cảm thấy chờ đợi quá lâu vui lòng liên hệ <b>suport@kidplay.vn</b> để được hổ trợ.";
                        }else{
                            $password=$password.$user['user_salt'];
                        }
                    }else {
                        $errorSignin[]='Tài khoản đăng nhập không hợp lệ hoặc mật khẩu không đúng';
                    }
                }
                else{
                    $errorSignin[]='Tài khoản đăng nhập không hợp lệ hoặc mật khẩu không đúng';
                }*/
            }
            if(empty($errorSignin))
            {
                $resAuth = $mUser->loginDev($account,$password);
                if($resAuth['status']){
                    //$this->_redirect('default');
                    $this->_helper->redirector->gotoUrl(_BASE_URL.'/developer');
        
                }
                else {
                    $errorSignin[]=$resAuth['message'];
                }
            }
        
            $this->view->error = $errorSignin;
        }
    }


}





